package com.hivekion.system.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnComment;
import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnType;
import com.gitee.sunchenbin.mybatis.actable.constants.MySqlTypeConstant;
import com.hivekion.common.entity.BaseEntity;
import lombok.Data;


@Data
@TableName("sys_operation_log")
public class SysOperationLog extends BaseEntity {
      @TableField
      @ColumnType(value = MySqlTypeConstant.INT, length = 8)
      @ColumnComment("日志等级")
      private Integer level;

      @TableField
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      @ColumnComment("被操作的对象")
      private String operationUnit;

      @TableField
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
      @ColumnComment("方法名")
      private String method;

      @TableField
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 5000)
      @ColumnComment("参数")
      private String args;

      @TableField
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
      @ColumnComment("日志描述")
      private String title;

      @TableField
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      @ColumnComment("操作类型")
      private String operationType;

      @TableField
      @ColumnType(value = MySqlTypeConstant.BIGINT, length = 8)
      @ColumnComment("方法运行时间")
      private Long runTime;

      @TableField
      @ColumnType(value = MySqlTypeConstant.LONGTEXT)
      @ColumnComment("方法返回值")
      private String returnValue;

      @TableField
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 5000)
      @ColumnComment("请求的参数")
      private String requestParams;

      @TableField
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      @ColumnComment("IP地址")
      private String ip;

      @TableField
      @ColumnType(value = MySqlTypeConstant.INT, length = 8)
      @ColumnComment("结果状态")
      private Integer status;
}
